package net.cyndeline.components.world

/**
 * An id that is shared for a specific type of instance.
 * Example: The same id can be found in every instance of a specific spell,
 * every enemy of the same type etc.
 * 
 * This id is used when constructing objects that reference other objects
 * of a certain type.
 * 
 * To reference a single entity, use the entity reference instead.
 */
trait TypeIdComponent {
  
  /**
   * An id shared between every instance of a certain object, unit etc.
   */
  def id: String
  
}